<script>
import pageAnimation from './components/page-animation';
import Vue from 'vue';
import { mapState, mapMutations, mapGetters } from 'vuex';
import { request } from './pages/util/ajax.js';
export default {
	mixins: [pageAnimation],
	onLaunch: function() {
		console.log('App Launch');
		/* 	var self = this
			// 获取小程序更新机制兼容
			if (wx.canIUse('getUpdateManager')) {
				const updateManager = wx.getUpdateManager()
				//1. 检查小程序是否有新版本发布
				updateManager.onCheckForUpdate(function(res) {
					// 请求完新版本信息的回调
					if (res.hasUpdate) {
						//检测到新版本，需要更新，给出提示
						wx.showModal({
							title: '更新提示',
							showCancel: false, //隐藏取消按钮
							confirmText: "确定更新", //只保留确定更新按钮
							content: '检测到新版本，是否下载新版本并重启小程序？',
							success: function(res) {
								if (res.confirm) {
									//2. 用户确定下载更新小程序，小程序下载及更新静默进行
									self.downLoadAndUpdate(updateManager)
								} else if (res.cancel) {
									//用户点击取消按钮的处理，如果需要强制更新，则给出二次弹窗，如果不需要，则这里的代码都可以删掉了
									wx.showModal({
										title: '温馨提示~',
										content: '本次版本更新涉及到新的功能添加，旧版本无法正常访问的哦~',
										showCancel: false, //隐藏取消按钮
										confirmText: "确定更新", //只保留确定更新按钮
										success: function(res) {
											if (res.confirm) {
												//下载新版本，并重新应用
												self.downLoadAndUpdate(updateManager)
											}
										}
									})
								}
							}
						})
					}
				})
			} else {
				// 如果希望用户在最新版本的客户端上体验您的小程序，可以这样子提示
				wx.showModal({
					title: '提示',
					content: '当前微信版本过低，无法使用该功能，请升级到最新微信版本后重试。'
				})
			} */
	},
	onShow: function() {
		console.log('App Show');
		document.title = '全省消防救援队伍正规化建设推进现场会';
		this.getSystemInfo();
	},
	onHide: function() {
		console.log('App Hide');
	},
	methods: {
		refreshToken() {
			let _this = this;
			/**
			 * 在小程序重启时重新注入用户数据
			 */
			let openid = uni.getStorageSync('userInfo').openid;
			if (openid) {
				request(
					{
						methods: 'POST',
						url: 'auth/refreshToken'
					},
					'query'
				).then(res => {
					if (res.data.code == 401) {
						_this.logout();
					} else if (res.data.code == 0) {
						_this.login({
							userInfo: res.data.userInfo,
							sysUser: res.data.sysUser,
							sysMenus: res.data.sysMenus
						});
					} else {
						uni.getStorage({
							key: 'userInfo',
							success: userInfoData => {
								_this.login({
									userInfo: userInfoData.data,
									sysUser: uni.getStorageSync('sysUser'),
									sysMenus: uni.getStorageSync('sysMenus')
								});
							}
						});
					}
				});
			} else {
				console.log('未登录');
			}
		},
		getSystemInfo() {
			uni.getSystemInfo({
				success: function(e) {
					console.log(e);
					// #ifndef MP
					Vue.prototype.StatusBar = e.statusBarHeight;
					if (e.platform == 'android') {
						Vue.prototype.CustomBar = e.statusBarHeight + 50;
					} else {
						Vue.prototype.CustomBar = e.statusBarHeight + 45;
					}
					// #endif
					// #ifdef MP-WEIXIN
					Vue.prototype.StatusBar = e.statusBarHeight;
					let custom = wx.getMenuButtonBoundingClientRect();
					Vue.prototype.Custom = custom;
					Vue.prototype.CustomBar = custom.bottom + custom.top - e.statusBarHeight;
					// #endif
					// #ifdef MP-ALIPAY
					Vue.prototype.StatusBar = e.statusBarHeight;
					Vue.prototype.CustomBar = e.statusBarHeight + e.titleBarHeight;
					// #endif
				}
			});
		},
		...mapMutations(['login', 'logout']),
		/**
		 * 下载小程序新版本并重启应用
		 */
		downLoadAndUpdate: function(updateManager) {
			var self = this;
			wx.showLoading();
			//静默下载更新小程序新版本
			updateManager.onUpdateReady(function() {
				wx.hideLoading();
				//新的版本已经下载好，调用 applyUpdate 应用新版本并重启
				updateManager.applyUpdate();
			});
			updateManager.onUpdateFailed(function() {
				// 新的版本下载失败
				wx.showModal({
					title: '已经有新版本了哟~',
					content: '新版本已经上线啦~，请您删除当前小程序，重新搜索打开哟~'
				});
			});
		}
	}
};
</script>

<style>
/*每个页面公共css */
@import 'colorui/main.css';
@import 'colorui/icon.css';
/*每个页面公共css */
@import url('./common/aui/css/aui.css');
@import url('./common/aui/css/aui.iconfont.css');

page {
	background-color: white;
}
.bg-my {
	background-color: #041529;
	color: #ffffff;
}
</style>
